Field of the Invention
The present invention relates to a time synchronization system and in particular to a system for synchronizing time entirely by synchronizing with an external synchronization signal such as a black burst (BB) signal according to a time synchronization protocol such as the Precision Time Protocol (PTP) in a video transmission system and/or a video reproduction system, which distributes, relays, and/or reproduces video signals and audio signals.
Description of the Related Art
A video transmission system is known which transmits a video signal distributed from a (base) broadcast station or the like to receivers at relay stations or the like using unicast or multicast. Such a video transmission system includes a plurality of devices such as transmitters or receivers consisting of the system to achieve redundancy and thereby enhance fault tolerance. Each of these devices synchronize the time based on an external reference signal to adjust the timing in the video signaling.
Methods for the above time synchronization include (1) a method for sending time information (timestamp) from a master node to a slave node to synchronize the time (a method for synchronizing the clock hands), and (2) a method for sending, from a source clock node, for example, a synchronization signal that is a periodic signal at one-second intervals and causing a slave clock to synchronize with this periodic signal (a method for synchronizing the cycles of the clock pendulums).
In the method (1), a time synchronization protocol as represented by the Institute of the Electrical and Electronics Engineers (IEEE) 1588 PTP has been available in recent years, which enables accurate time synchronization over networks such as an Ethernet® network and an IP network. The IEEE 1588 PTP is a protocol for distributing a clock with high accuracy (e.g. nanosecond-order accuracy) over a packet-based network, and the latest version thereof is IEEE 1588-2008 (referred to as IEEE 1588v2).
In the industrial association Society of Motion Picture and Television Engineers (SMPTE), the standard ST2059 defines the clock management and the relation with signal generation timing based on the time synchronization according to the PTP, and specifies, by using International Atomic Time (TAI) as a global clock, video timing generation based on the time elapsed from a reference time (epoch) on the global clock. Specifically, the standard ST2059 specifies the relation between a clock that serves as a reference on a global time axis and the cycle of generation of one screen (frame) of video signal.
The IEEE 1588v2 PTP employs a hierarchical master-slave structure for clock distribution. The hierarchical master-slave structure comprises master nodes and slave nodes. The master node (a reference node that sends its local clock to external nodes) is also referred to as a grand master clock (GMC), and sends time information to the slave nodes according to the above-mentioned method (1). The master node itself corrects its local clock according to the above-mentioned method (2) in a case where the master node uses, as an external synchronization signal, a reference signal once every second (1PPS) generated by a global source clock (such as the GPS or an atomic clock).
The slave node is also referred to as an ordinary clock (OC). The slave node determines the best master clock (BMC) with the highest priority among one or more master nodes according to a specified algorithm, and synchronizes the time with the time in the BMC (according to the above-mentioned method (1)). That is, the slave node corrects its local clock based on time information sent from the BMC.
A node that synchronizes the time with the time in a BMC according to the method (1) and transfers a corrected local clock to networks not connected to the BMC is referred to as a boundary clock (BC).
Since the slave node and the BC only synchronizes the time based on the clocks of their master nodes, the slave node and the BC cannot accurately correct their local clocks if the master nodes has less clock accuracy.
Further, when the slave node or the BC changes its BMC by selecting a mater node with higher priority, the local clock of the master node may differ before and after the change. In this case, correction of the local clock in the slave node or the BC through time synchronization might result in a situation where the clock time jumps to a discrete point or the clock runs faster (or slower) temporarily. This may provide less periodic accuracy in reproducing a periodic signal.
For this reason, even in the case of employing a redundant structure including a plurality of master nodes, the above-mentioned technique is based on the precondition that a predetermined clock is used by all the plurality of master nodes. In other words, all the master nodes are required to generate signals with completely the same frequency based on the same source clock (e.g. the GPS, an atomic clock, or the like) and thus have identical clocks.
A conventional master node corrects its local clock by using a signal generated once every second (1PPS) and a global source clock (such as the GPS or an atomic clock) at that moment. Thus, if a BB signal is generated by an independent source clock node and that BB signal differs in time standard from the global source clock, the master node can neither correct its clock nor generate correct timing based on the BB signal. Suppose, for example, that an independent source clock such as a BB signal has a frequency different from a global source clock in terms of 1 PPM accuracy. In this case, for 1/50-cycle video frames, a time lag of one frame occurs in 20,000 seconds, which is approximately five and a half hours.
In the above-mentioned video transmission system, the master node receives a BB signal or the like as an external synchronization signal, and that BB signal is used as a source clock for the system entirely. On the other hand, in such a video transmission system, not all nodes can always receive the source clock from the source clock node. Under such situation, the system needs to synchronize the time by synchronizing with the external synchronization signal.
In global source clocks the time corresponding to any 1PPS signal is managed as “Time of Day.” Thus, a master node using a global source clock can correct its local clock at any time according to the above-mentioned method (2). In contrast, as for a BB signal generated by an independent source clock, its relation with global time is unknown, which makes it impossible to uniquely determine an expected value of a local clock that is supposed to be set at the start of the correction according to the method (2).
Referring to FIGS. 1A and 1B, suppose that in a time synchronization system according to the IEEE 1588v2 PTP, one of a plurality of redundant master nodes is in a fault state and stops functioning as a master node. The time synchronization system illustrated in FIG. 1A include two master nodes MA and MB and two slave nodes SA and SB. The slave nodes SA and SB are connected to both of the master nodes MA and MB (elements such as switches provided between the master and slave nodes are omitted for simplicity). The master node MA has ports AP1 and AP2, and communicates with the master node MB through the port AP1 and communicates with the slave nodes SA and SB through the port AP2. Likewise, the master node MB has ports BP1 and BP2, and communicates with the master node MA through the port BP1 and communicates with the slave nodes SA and SB through the port BP2.
The master nodes MA and MB can have identical local clocks by being activated exactly at the same time, and thereafter correct and maintain their local clocks by using the same synchronization signal. Each of the slave nodes SA and SB determines one of the master nodes MA and MB as own BMC and synchronizes the time with the time in that BMC.
For example, if the master node MB is in a fault state, the master node MB is temporarily detached from the time synchronization system. When the fault is fixed and the master node MB is attached to the time synchronization system, the local clock of the master node MB may have the time different from the master node MA since the local clock of the master node MB has not been matched to the source clock of the time synchronization system.
As mentioned above, under the condition where clocks are corrected based on an external synchronization signal such as a BB signal, the BB signal is merely a timing synchronization signal. Thus, unless the source clock node generates as the source clock a BB signal accurately synchronized with a global clock, there is a problem that the local clock of the master node MB cannot be accurately matched to the local clock of the master node MA, which makes it impossible to correct and reproduce the local clock of the master node MB.
Here, while states of ports in a master node are specified in the IEEE 1588v2 PTP, each port may autonomously transition its state. For this reason, if, for example, the state of the port BP2 of the master node MB transitions to a MASTER state when the master node MB is attached to the time synchronization system, any of the slave nodes SA and SB might synchronizes the time with the master node MB. In such a case, the accuracy for the local clock of that slave node is not guaranteed. Synchronizing the time with a master node with the different time might result in a situation where the time in the clock jumps to a discrete point or changes abruptly from the time before the time synchronization.
In order to match the local clock of the master node MB to the local clock of the master node MA and transfer information after that matching to a slave node, one possible method is to reactivate the master node MB as the above-mentioned BC node, as illustrated in FIG. 1B. In this case, the node MB as a BC node firstly synchronizes the time with the time in the master node MA through the port BP1, which is in a SLAVE state, according to the method (1) and then transfers time information after that time synchronization to the slave node through the port BP2, which is in the MASTER state. In this way, even when the communication channel between the master node MA and the slave node is in a fault state, the slave node can continue its time synchronization according to the method (1) through the BC node MB.
In this method, however, since the master node MA is a sole grand master clock, the system will have no node that corrects time according to the method (2) and be disabled from continuing its operation if the master node MA is in a fault state.
Japanese Patent Laid-Open No. 2015-188159 (PTL 1) discloses time synchronization performed by a slave node. In a time synchronization method in accordance with PTL 1, a slave node sends and receives to and from a plurality of master nodes control messages for use in the time synchronization process for synchronizing the time in the slave node with the time in a master node. Then, the slave node corrects an error between the masters in a statistical process and corrects its time based accurate time information. This configuration avoids that the local clock of the slave node is shifted due to errors in delay time between the plurality of master nodes and the slave node resulting from queuing delays at relay devices or the like. However, the time synchronization method in accordance with PTL 1 is based on the precondition that a plurality of master nodes are present, and does not solve the above-mentioned problem by guaranteeing accurate synchronization between a plurality of master nodes.
Japanese Patent Laid-Open No. 2015-188152 (PTL 2) discloses a method of time synchronization performed by a slave node. In the time synchronization method in accordance with PTL 2, if a condition is satisfied indicating less accuracy for the time source of any of a plurality of master nodes with which the slave node performs the time synchronization process for synchronizing the time in the slave node with the time in a master node, a slave node determines a master node other than the master node meeting the condition as own master node to synchronize with. With this configuration, in a case where any of a plurality of master nodes has less accuracy for the time source, it avoids that the slave node synchronizes the time with the time in the master node among the plurality of master nodes having less accuracy for the time source. However, the time synchronization method in accordance with PTL 2 is also based on the precondition that a plurality of master nodes are present, and does not guarantee accurate synchronization between a plurality of master nodes.
The present invention has been made in view of the above problem, and an object thereof is to provide a time synchronization system including a plurality of master nodes which is capable of accurate and efficient time synchronization of the system entirely, for example, if one (secondary master node) of the plurality of master nodes has less clock accuracy. In the time synchronization system, the secondary master node synchronizes the time with the time in a primary master node and then synchronizes time with the time in an external synchronization signal.